package com.farm.service;

import com.farm.domain.Account;
import com.farm.domain.Address;
import com.farm.utils.Result;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;


@Service

public interface AccountService {

    //登陆接口
    public Account login(String loginName, String passWord);

    //注册接口
    public Result register(String name, String loginName, String password, String phone,String identity);

    //查重接口（查找重复的用户名）
    public Account repeat(String loginName);

    //token调用接口(检查token中解码的用户名和昵称是否在数据库中存在)
    public Account checkToken(String nickname, String loginName);

    //上传头像接口
    public Integer uploadProfilePicture(Account account);

    //获取用户所有信息接口
    public Account getUserInfo(String loginName, String nickname);

    //用户添加地址信息
    public Integer addAddress(String loginName,Map params);

    //用户更新地址信息
    public Integer updateAddress(Map params);

    //用户删除地址信息
    public Integer delAddressInfo(Map params);

    //用户请求地址信息
    public List<Address> getAddressInfo(String loginName);

    //用户注销
    public Integer userRemoval(String name,String loginName);

    //用户更新个人信息
    public Integer updateInfo(String loginName,String name,String password,String phone);

    /*服务器专用接口*/

    //获取用户所有信息接口
    public Account getAll(String loginName);

    public Account getUserInfoById(String id);
}
